home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1996 #1 / Amiga Plus CD - 1996 - No. 1.iso / pd / netz / amiconnect / amitcp / bin / postnews.demon < prev    next >
Text File  |  1995-09-02  |  3KB  |  117 lines

  1. /*
  2. ** Postnews Replacement Script
  3. ** GRn Can Now Post News :-)
  4. */
  5. Parse arg result
  6. a = 1
  7. art = word(result,1)
  8. art2 = word(result,3)
  9. alreadyinsertedfile = "FALSE"
  10. org = "The Martin Hunt Fan Club"
  11. if open(org,"env:organization","R") then
  12. do
  13.    organisation = readln(org)
  14.    call close(org)
  15. end
  16. if open(org,"env:organisation","R") then
  17. do
  18.    organisation = readln(org)
  19.    call close(org)
  20. end
  21. if art2 = "" then
  22. do
  23.   call open(file,art,"A")
  24.   call seek(file,0,"B")
  25.   a = 1
  26.   newsgroup = readln(file)
  27.   line.1 = newsgroup
  28.   a = 2
  29.   line.2 = "Organization: "||organisation
  30.   do until eof(file)
  31.     a = a + 1
  32.     line.a = readln(file)
  33.     if compress(line.a) == "--" then
  34.     do
  35.       call signature()
  36.       lev = 1
  37.     end
  38.     if lev = 1 then leave
  39.   end
  40.   call close(file)
  41.   call open(file,art,"W")
  42.   call seek(file,0,"B")
  43.   do i = 1 to a
  44.      call writeln(file,line.i)
  45.   end
  46.   call close(file)
  47. end
  48.  
  49. if art2 ~="" then
  50. do
  51.   call open(file,art,"A")
  52.   call seek(file,0,"B")
  53.   newsgroup = readln(file)
  54.   a = 2
  55.   sig = 0
  56.   do while ~eof(file) & ~Sig
  57.     a = a + 1
  58.     if alreadyinsertedfile == "FALSE" then call insertfile2()
  59.     line.a = readln(file)
  60.     if compress(line.a) == "--" then call signature()
  61.     if upper(word(line.a,1)) == "FROM:" then a = a - 1
  62.   end
  63.   call close(file)
  64.   n = 1
  65.   quitflag = 0
  66.   do until quitflag
  67.      filename = "t:grn-file."||n
  68.      if ~exists(filename) then quitflag = 1
  69.      n = n + 1
  70.   end
  71.   art = filename
  72.   call open(file,art,"W")
  73.   call seek(file,0,"B")
  74.   line.1 = "To:"
  75.   line.2 = newsgroup
  76.   line.3 = "Organization: "||organisation
  77.   do i = 1 to a
  78.      call writeln(file,line.i)
  79.   end
  80.   call close(file)
  81. end
  82.  
  83. if a == 0 then address command "amitcp:bin/sendmail <" art "-f $USER -t mail2news@news.demon.co.uk"
  84. if a ~== 0 then address command "amitcp:bin/sendmail <" art "-f $user -t mail2news@news.demon.co.uk "
  85. exit
  86.  
  87. insertfile2:
  88.   call open(file2,art2,"R")
  89.   do while ~eof(file2)
  90.     a = a + 1
  91.     line.a = readln(file2)
  92.     if word(line.a,1) == "X-NewsSoftware:" then line.a = "X-NewsSoftware: GRn 2.1 19/2/94 (PostNews Fix 31/3/95 Martin Hunt)"
  93.   end
  94.   alreadyinsertedfile = "TRUE"
  95.   call close(file2)
  96. RETURN
  97.  
  98. Signature:
  99. parse var newsgroup title ": " name.1 "." name.2 "." name.3 "." name.4 "." name.5 "." name.6 "." name.7 "." name.8 "." name.9 "." name.10
  100. nameno = 1
  101. sigfile = "uunews:"
  102. do while name.nameno ~== ""
  103.   sigfile = sigfile || name.nameno ||"/"
  104.   nameno = nameno + 1
  105. end
  106. sigfile = sigfile ||".sig"
  107. if open(sig,sigfile,"R") then
  108. do
  109.   do until eof(sig)
  110.     a = a + 1
  111.     line.a = readln(sig)
  112.   end
  113.   call close(sig)
  114.   sig = 1
  115. end
  116. return
  117.